﻿using System;
using System.Collections.Generic;
using TCG.Engine.Impacts;
using TCG.Engine.Core;
namespace TCG.Engine.Effects
{
    public interface IEffect
    {
        void StartTurn(Match m);
        void EndTurn(Match m);

        void Apply(MoveContext mc);

        void StartMove(MoveContext mc);
        void Move(MoveContext mc);
        void EndMove(MoveContext mc);
    }

    public class EffectBase : IEffect
    {
        public virtual void StartTurn(Match m)
        {
        }

        public virtual void EndTurn(Match m)
        {
        }

        public virtual void Apply(MoveContext mc)
        {
        }

        public virtual void StartMove(MoveContext mc)
        {
        }
        public virtual void Move(MoveContext mc)
        {
        }
        public virtual void EndMove(MoveContext mc)
        {
        }
    }
}
